﻿#ifndef _OI_PLSCANNER_CALIBRATION_HPP_
#define _OI_PLSCANNER_CALIBRATION_HPP_

#include "PLScannerCore/OiPLScannerCore.hpp"

namespace Oi
{
    namespace PLScannerCore
    {
        class OI_PLSCANNER_CORE_API CalibDlg : public QDialog
        {
            Q_OBJECT

        public:
            CalibDlg(QWidget* parent = nullptr);
            ~CalibDlg();

        public slots:
            void onReady();
            void onCalibration();
            void onVerification();
            void onSaveImage() const;
            void onFailImage() const;
            void onRefresh(const LTCameraFrame& rangeMaps, const QDateTime& timestamp);
            void onUpdateChart();
            void calibModeA();
            void calibModeB();
            void calibSideWall();

        private:
            OI_DISABLE_COPY(CalibDlg);
            OI_DECLARE_IMPL(CalibDlg);

        };
    }
}


#endif